package com.gaoding.shared.dict.dto.request;

import com.gaoding.commons.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

/**
 * @author mobai
 * @since 2021/4/15 14:57
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@ApiModel("新增字典内容实体")
public class CreateDictTextContentDTO extends BaseDto {

    /**
     * 服务编码
     */
    @ApiModelProperty("服务编码")
    @NotEmpty(message = "服务编码不得为空")
    private String serviceCode;

    /**
     * 语言编码
     */
    @ApiModelProperty("语言编码")
    @NotEmpty(message = "语言编码不得为空")
    private String languageCode;


    /**
     * 文本类型
     * 1： message code
     * 2： 下拉框、分类选项等文本选项
     * 3：页面UI文本描述
     */
    @ApiModelProperty(" 文本类型\n" +
            "     * 1： message code\n" +
            "     * 2： 下拉框、分类选项等文本选项\n" +
            "     * 3：页面UI文本描述")
    @NotNull(message = "文本类型 不得为空")
    private Integer textType;

    /**
     * 文本key
     */
    @ApiModelProperty("文本key")
    @NotEmpty(message = "文本key不得为空")
    private String textKey;

    /**
     * 文本内容或者是外链的文本配置地址
     */
    @ApiModelProperty("文本内容或者是外链的文本配置地址")
    @NotEmpty(message = "文本内容或者是外链的文本配置地址不得为空")
    private String textContent;
}
